﻿// -----------------------------------------------------------------------
// <copyright file="PushStats.cs" company="Zen Design Corp">
// TODO: Update copyright text.
// </copyright>
// -----------------------------------------------------------------------

namespace Zen.BlackBerry.Push.Stats
{
	using System;

	/// <summary>
	/// Represents push statistics for an application.
	/// </summary>
	public class PushStats
	{
		/// <summary>
		/// Initializes a new instance of the <see cref="PushStats"/> class.
		/// </summary>
		public PushStats()
		{
		}

		/// <summary>
		/// Initializes a new instance of the <see cref="PushStats"/> class.
		/// </summary>
		/// <param name="applicationId">The application id.</param>
		public PushStats(string applicationId)
		{
			ApplicationId = applicationId;
			DailyPushCountDate = DateTime.Today;
		}

		/// <summary>
		/// Gets or sets the application id.
		/// </summary>
		/// <value>The application id.</value>
		public string ApplicationId
		{
			get;
			set;
		}

		/// <summary>
		/// Gets or sets the daily push count.
		/// </summary>
		/// <value>The daily push count.</value>
		public int DailyPushCount
		{
			get;
			set;
		}

		/// <summary>
		/// Gets or sets the date for which the daily push count is calculated.
		/// </summary>
		/// <value>The daily push count date.</value>
		public DateTime DailyPushCountDate
		{
			get;
			set;
		}

		/// <summary>
		/// Gets or sets the total volume of content pushed since this value was reset.
		/// </summary>
		/// <value>The running content sum.</value>
		public long RunningContentSum
		{
			get;
			set;
		}

		/// <summary>
		/// Gets or sets the total number of pushes since this value was reset.
		/// </summary>
		/// <value>The running push count.</value>
		public long RunningPushCount
		{
			get;
			set;
		}
	}
}
